/*
 ***************************************************************************
 * MediaTeK Inc.
 * 4F, No. 2 Technology	5th	Rd.
 * Science-based Industrial	Park
 * Hsin-chu, Taiwan, R.O.C.
 *
 * (c) Copyright 2002-2012, MTK.
 *
 * All rights reserved.	MediaTeK's source	code is	an unpublished work	and	the
 * use of a	copyright notice does not imply	otherwise. This	source code
 * contains	confidential trade secret material of MediaTeK Tech. Any attemp
 * or participation	in deciphering,	decoding, reverse engineering or in	any
 * way altering	the	source code	is stricitly prohibited, unless	the	prior
 * written consent of MediaTeK, Inc. is obtained.
 ***************************************************************************

	Module Name:
	9_1_ME.h
	
	Abstract:

	Revision History:
	Who			When			What
	--------	----------		----------------------------------------------
	Name		Date			Modification logs
	kenny.weng		2012/7/16	Create
*/

#ifndef _EQUIPMENT_MANAGEMENT_ME_H_
#define _EQUIPMENT_MANAGEMENT_ME_H_

#include "omci_adpt_common.h"

#define	DEBUG_CMD_ASCII_FORMAT	0
#define	DEBUG_CMD_FREE_FORMAT	1

//functions
//9.1.1 ONU-G
int setONUGAdminStateValue(omci_me_info_ptr new_info,omci_attr_dscp_ptr omci_attr);
int getONUGOpStateValue(omci_me_info_ptr new_info,omci_attr_dscp_ptr omci_attr);
int getONUGLOID(omci_me_info_ptr new_info,omci_attr_dscp_ptr omci_attr);
int getONUGLOIDPWD(omci_me_info_ptr new_info,omci_attr_dscp_ptr omci_attr);
int omci_me_onu_g_test_result_op(management_entry_ptr me_entry, omci_me_info_ptr me_info);

//9.1.2 ONU2-G
int getOMCCVersionValue(omci_me_info_ptr new_info,omci_attr_dscp_ptr omci_attr);
int getSysUpTimeValue(omci_me_info_ptr new_info,omci_attr_dscp_ptr omci_attr);
int setSecurityModeValue(omci_me_info_ptr new_info,omci_attr_dscp_ptr omci_attr);

//9.1.3 ONU data
int getMIBDataSyncValue(omci_me_info_ptr new_info,omci_attr_dscp_ptr omci_attr);
int setMIBDataSyncValue(omci_me_info_ptr new_info,omci_attr_dscp_ptr omci_attr);


int setRemoteDebugCmd(omci_me_info_ptr new_info,omci_attr_dscp_ptr omci_attr);
int getRemoteDebugReplyTab(omci_me_info_ptr new_info,omci_attr_dscp_ptr omci_attr);

/*extern */
extern omci_attr_dscp_t omci_attr_onu_g_op[];
extern omci_me_func_t 	omci_me_onu_g_op;
extern omci_attr_t 		omci_onu_g_attr;

extern omci_attr_dscp_t omci_attr_onu_data_op[];
extern omci_me_func_t 	omci_me_onu_data_op;
extern omci_attr_t 		omci_onu_data_attr;

extern omci_attr_dscp_t omci_attr_onu2_g_op[];
extern omci_me_func_t 	omci_me_onu2_g_op;
extern omci_onu2_g_t 	omci_onu2_g_attr_data;
extern omci_attr_t 		omci_onu2_g_attr;

extern omci_attr_dscp_t omci_attr_card_holder_op[];
extern omci_me_func_t 	omci_me_card_holder_op;
extern omci_attr_t 		omci_card_holder_attr;

extern omci_attr_dscp_t omci_attr_sw_image_op[];
extern omci_me_func_t 	omci_me_sw_image_op;
extern omci_attr_t 		omci_sw_image_attr;

extern omci_attr_dscp_t omci_attr_circuit_pack_op[];
extern omci_me_func_t 	omci_me_circuit_pack_op;
extern omci_attr_t 		omci_circuit_pack_attr;

extern omci_attr_dscp_t omci_attr_onu_power_schedding_op[];
extern omci_me_func_t 	omci_me_onu_power_schedding_op;
extern omci_attr_t 		omci_onu_power_schedding_attr;

extern omci_attr_dscp_t omci_attr_port_mapping_pkt_op[];
extern omci_me_func_t 	omci_me_port_mapping_pkt_op;
extern omci_attr_t 		omci_port_mapping_pkt_attr;

extern omci_attr_dscp_t omci_attr_onu_remote_debug_op[];
extern omci_me_func_t 	omci_me_onu_remote_debug_op;
extern omci_attr_t 		omci_onu_remote_debug_attr;


#endif
